home *** CD-ROM | disk | FTP | other *** search
/ Clinton - Portrait of Victory / PORTRAIT OF VICTORY.BIN / cltpc256 / eagle34.txt < prev    next >
Text File  |  1992-12-28  |  10KB  |  556 lines

  1. ; The Debates main menu
  2. start34:
  3. pload ehdeb 1
  4. putup 0 415 p1
  5. pfree 1
  6. pload debtp 1
  7. putup 0 96 p1
  8. pfree 1
  9. pload ebcams 1
  10. putup 128 31 p1
  11. pfree 1
  12. if @tnum<>0
  13.   pload ebnav 1
  14.   putup 0 0 p1
  15.   pfree 1
  16. endif
  17. menu34:
  18. set gonum 34
  19. mn34:
  20. waitkey
  21. getkey k
  22. if @k==1
  23.   set num 1
  24.   goto menu341
  25. else
  26.   if @k==2
  27.     set title "ehpa04"
  28.     set tnum 43
  29.     set first 176
  30.     set last 218
  31.     set back "eagle34"
  32.     link eagle41
  33.   else
  34.     if @k==3
  35.       xbkg
  36.       set num 1
  37.       goto menu342
  38.     else
  39.       if @k==chr(104)||@k==chr(72)
  40.         goto help
  41.       else
  42.         if @k==chr(112)||@k==chr(80)
  43.           xbkg2
  44.           link eagle3 menubk
  45.         else
  46.           if @k==chr(101)||@k==chr(69)
  47.             xbkg
  48.             pload edexit 1
  49.             putup 190 200 p1
  50.             pfree 1
  51.             mn34b:
  52.             waitkey
  53.             getkey k
  54.             if @k==chr(13)
  55.               exit
  56.             else
  57.               if @k==chr(27)
  58.                 xbkg
  59.                 pload debtp 1
  60.                 putup 0 96 p1
  61.                 pfree 1
  62.                 goto menu34
  63.               else
  64.                 goto mn34b
  65.               endif
  66.             endif
  67.           else
  68.             goto mn34
  69.           endif
  70.         endif
  71.       endif
  72.     endif
  73.   endif
  74. endif
  75.  
  76. ; Photo and Audio Introduction selection display
  77. menu341:
  78. set gonum 341
  79. set abort on
  80. mn341:
  81. pload menum 1
  82. pfade 9 1
  83. pfree 1
  84. pload debp$@num 1
  85. set px (639-p1->xsize)/2
  86. set py 67+((355-p1->ysize)/2)
  87. putup @px @py p1
  88. pfree 1
  89.   set m ""
  90.   if @num==1
  91.     cdplay 25 12
  92.     timer
  93.     waitkey 1200
  94.   endif
  95.   if @num==2
  96.     cdplay 26 9
  97.     timer
  98.     waitkey 900
  99.   endif
  100.   if @num==3
  101.     cdplay 27 18
  102.     timer
  103.     waitkey 1800
  104.   endif
  105.   if @num==4
  106.     cdplay 28 14
  107.     timer
  108.     waitkey 1400
  109.   endif
  110.   if @num==5
  111.     cdplay 29 14
  112.     timer
  113.     waitkey 1400
  114.   endif
  115.   if @num==6
  116.     cdplay 30 9
  117.     timer
  118.     waitkey 900
  119.   endif
  120.   if @num==7
  121.     cdplay 31 11
  122.     timer
  123.     waitkey 1100
  124.   endif
  125.   getkey m
  126.   xstop
  127.   cdstop
  128. if @num==7
  129.   pload ebkg 1
  130.   pfade 9 1
  131.   pfree 1
  132.   set tnum 1
  133.   set abort off
  134.   goto start34
  135. else
  136.   set num @num+1
  137.   goto mn341
  138. endif
  139.  
  140. ; Milestones text selection display
  141. menu342:
  142. set gonum 342
  143. mn342:
  144. color 0
  145. rect 40 95 600 405
  146. color 10
  147. fload times15 1
  148. fgaps 1 5 3
  149. set buf readfile(debmt$@num$.doc)
  150. window 60 95 580 390
  151. text @@buf
  152. . farfree(@buf)
  153. window
  154. set center on
  155. ffree 1
  156. fload ibm8 1
  157. text 0 115 "Page "$@num$" of 6"
  158. text 0 105 "Press <PGUP> for next or <PGDN> for prior."
  159. set center off
  160. ffree 1
  161. mn342b:
  162. waitkey
  163. getkey k
  164. if @k==1
  165.   set num 1
  166.   goto menu341
  167. else
  168.   if @k==2
  169.     set title "ehpa04"
  170.     set tnum 43
  171.     set first 176
  172.     set last 218
  173.     set back "eagle34"
  174.     link eagle41
  175.   else
  176.     if @k==chr(104)||@k==chr(72)
  177.       goto help
  178.     else
  179.       if @k==chr(112)||@k==chr(80)
  180.         xbkg2
  181.         link eagle3 menubk
  182.       else
  183.         if @k==chr(101)||@k==chr(69)
  184.           xbkg
  185.           pload edexit 1
  186.           putup 190 200 p1
  187.           pfree 1
  188.           mn342c:
  189.           waitkey
  190.           getkey k
  191.           if @k==chr(13)
  192.             exit
  193.           else
  194.             if @k==chr(27)
  195.               xbkg
  196.               goto menu342
  197.             else
  198.               goto mn342c
  199.             endif
  200.           endif
  201.         else
  202.           if @k==chr(73)$chr(1)||@k==chr(72)$chr(1)
  203.             if @num==6
  204.               set num 1
  205.               goto mn342
  206.             else
  207.               set num @num+1
  208.               goto mn342
  209.             endif
  210.           else
  211.             if @k==chr(81)$chr(1)||@k==chr(80)$chr(1)
  212.               if @num==1
  213.                 set num 6
  214.                 goto mn342
  215.               else
  216.                 set num @num-1
  217.                 goto mn342
  218.               endif
  219.             else
  220.               goto mn342b
  221.             endif
  222.           endif
  223.         endif
  224.       endif
  225.     endif
  226.   endif
  227. endif
  228.  
  229. help:
  230. pload apatch 1
  231. putup 0 0 p1
  232. pfree 1
  233. pload eclbb 1
  234. putup 0 29 p1
  235. pfree 1
  236. xbkg
  237. pload edhelp 1
  238. putup 31 74 p1
  239. pfree 1
  240. fload ibm8 1
  241. fgaps 1 4 2
  242. set buf readfile(debhlp.doc)
  243. window 65 345 575 100
  244. color 1
  245. text @@buf
  246. . farfree(@buf)
  247. window
  248. ffree 1
  249. hlp1:
  250. waitkey
  251. getkey k
  252. if @k==chr(13)
  253.   if @gonum==34
  254.     xbkg
  255.     pload debtp 1
  256.     putup 0 96 p1
  257.     pfree 1
  258.     pload ebcams 1
  259.     putup 128 31 p1
  260.     pfree 1
  261.     pload ebnav 1
  262.     putup 0 0 p1
  263.     pfree 1
  264.     goto menu34
  265.   else
  266.     xbkg
  267.     pload ebcams 1
  268.     putup 128 31 p1
  269.     pfree 1
  270.     pload ebnav 1
  271.     putup 0 0 p1
  272.     pfree 1
  273.     goto menu$@gonum
  274.   endif
  275. else
  276.   goto hlp1
  277. endif
  278.  
  279. xbkg:
  280. pload ebkgx 1
  281. putup 0 67 p1
  282. pfree 1
  283. return
  284.  
  285. xbkg2:
  286. pload eclbb 1
  287. putup 0 29 p1
  288. pfree 1
  289. pload ebkgx 1
  290. putup 0 67 p1
  291. pfree 1
  292. pload eclhx 1
  293. putup 0 412 p1
  294. pfree 1
  295. return
  296.  
  297. xStop:
  298. if len(@m)
  299.     cdstop
  300.     pload ebkg 1
  301.     pfade 0 1
  302.     pfree 1    
  303.         set tnum 1
  304.         set abort off
  305.     pop start34
  306. else
  307.     return
  308. endif
  309.  
  310. ;
  311. ;    CDINIT
  312. ;
  313. ;    Check for CD-ROM driver and setup @drive
  314. ;
  315. cdinit:
  316.     int 0x2f 0x1500,0
  317.     if @bx
  318.         global drive chr(@cx+asc("A"))
  319.     else
  320.         global drive ""
  321.     endif
  322.     return
  323.  
  324. cdplay:
  325.     cdtrack    @1 @3 @4 @5
  326.     cdcmd    132,@0,@2*75
  327.     cdcheck    @0,cdplay
  328.     return
  329.  
  330. ;
  331. ;    CDPLAYTO TRACK MINUTES SECONDS FRAMES TRACK MINUTES SECONDS FRAMES
  332. ;
  333. ;
  334. cdplayto:
  335.     cdtrack    @1 @2 @3 @4
  336.     local    begin @0
  337.     cdtrack    @5 @6 @7 @8
  338.     local    end @0
  339.     cdcmd    132,@begin,@end-@begin
  340.     cdcheck    @0,cdplayto
  341.     return
  342.  
  343. ;
  344. ;    CDSTOP
  345. ;
  346. ;    Stop playing immediately
  347. ;
  348. cdstop:
  349.     cdcmd    133,0,0
  350.     cdcheck    @0,cdstop
  351.     return
  352.  
  353. ;
  354. ;    CDRESUME
  355. ;
  356. ;    Resume playing from where we issued a CDSTOP
  357. ;
  358. cdresume:
  359.     cdcmd    136,0,0
  360.     cdcheck    @0,cdresume
  361.     return
  362.  
  363. ;
  364. ;    CDSEEK TRACK {MINUTES SECONDS FRAMES}
  365. ;
  366. ;    Seek the CD player head to a track to minimize play startup time.
  367. ;    Parameters are the same as CDPLAY.
  368. ;
  369. cdseek:
  370.     cdtrack @1 @2 @3 @4
  371.     cdcmd 131,@0,0
  372.     cdcheck    @0,cdseek
  373.     return
  374.  
  375. ;
  376. ;    CDEJECT
  377. ;
  378. ;    Open the CD drive's tray/door
  379. ;
  380. cdeject:
  381.     local    buf ofs("1")
  382.     local    bseg seg(@buf);
  383.     poke    @bseg @buf 0                ;Eject Disk
  384.     cdcmd    12,@buf|(@bseg<<16),1            ;WRITE IOCTL Output
  385.     cdcheck    @0,cdeject
  386.     return
  387.  
  388. ;
  389. ;    CDCLOSE
  390. ;
  391. ;    Close the CD drive's tray/door
  392. ;
  393. cdclose:
  394.     local    buf ofs("1")
  395.     local    bseg seg(@buf);
  396.     poke    @bseg @buf 5                ;Close Tray
  397.     cdcmd    12,@buf|(@bseg<<16),1            ;WRITE IOCTL Output
  398.     cdcheck    @0,cdclose
  399.     return
  400.  
  401.  
  402. ;
  403. ;    CDSTATUS
  404. ;
  405. ;    Return CD Drive status and setup global variables @first and @last
  406. ;
  407. cdstatus:
  408.     local    buf ofs("123456")
  409.     local    bseg seg(@buf);
  410.     poke    @bseg @buf 10                ;Audio Disk Info
  411.     cdcmd    3,@buf|(@bseg<<16),6            ;READ IOCTL Input
  412.     cdcheck    @0,cdstatus
  413.     global    first peek(@bseg,@buf+1)+0
  414.     global    last  peek(@bseg,@buf+2)+0
  415.     poke    @bseg @buf 6                ;Device status
  416.     cdcmd    3,@buf|(@bseg<<16),5            ;READ IOCTL Input
  417.     cdcheck    @0,cdstatus
  418.     return    peekl(@bseg,@buf+1)
  419.  
  420. ;
  421. ;    CDTRACK TRACK MINUTES SECONDS FRAMES
  422. ;
  423. ;    Return the absolute sector number of a track
  424. ;
  425. cdtrack:
  426.     local    buf ofs("1234567")
  427.     local    bseg seg(@buf);
  428.     poke    @bseg @buf 11                ;Get Audio Track Info
  429.     poke    @bseg @buf+1 @1             ;track number
  430.     cdcmd    3,@buf|(@bseg<<16),7            ;READ IOCTL Input
  431.     cdcheck    @0,cdtrack
  432.     return    peekl(@bseg,@buf+2)+(@2*60+@3)*75+@4    ;return track address
  433.  
  434.  
  435. cdcmd:
  436.     local req ofs("12345678901234567890123456")
  437.     local rseg seg(@req)
  438.     poke  @rseg @req 13                ;param length
  439.     poke  @rseg @req+1 0                ;subunit
  440.     poke  @rseg @req+2 @1                ;command code
  441.     pokew @rseg @req+3 0                ;status
  442.     pokel @rseg @req+5 0 0                ;reserved
  443.     poke  @rseg @req+13 1                ;address mode
  444.     pokel @rseg @req+14 @2                ;begin
  445.     pokel @rseg @req+18 @3                ;length
  446.     pokel @rseg @req+22 0                ;reserved
  447.     int 0x2f 0x1510,@req,asc(@drive)-asc("A"),,,,,seg(@req)
  448.     if peek(@rseg,@req+4)&0x80
  449.         databegin
  450.             "Unknown Error"
  451.             "Write-protect violation"
  452.             "Unknown unit"
  453.             "Drive not Ready"
  454.             "Unknown command"
  455.             "CRC error"
  456.             "Bad drive request structure length"
  457.             "Seek Error"
  458.             "Unknown media"
  459.             "Sector not found"
  460.             "Printer out of paper"
  461.             "Write Fault"
  462.             "Read Fault"
  463.             "General failure"
  464.             "Reserved 1"
  465.             "Reserved 2"
  466.             "I